clear all
use  "../data/zip_year_data", clear

*Define CHTV and CHTC and the IV 
gen lnchtc = log((chinese100cash - american100cash/american100*chinese100)*(american100/(american100 - american100cash)))
gen chtc = (chinese100cash - american100cash/american100*chinese100)*(american100/(american100 - american100cash))

gen lnchtv = log((chinese100_cashval - american100_cashval/american100_val*chinese100_val)*(american100_val/(american100_val - american100_cashval)))
gen chtv = (chinese100_cashval - american100_cashval/american100_val*chinese100_val)*(american100_val/(american100_val - american100_cashval))

by year, sort: egen chttc = sum(chtc)
gen chi_iv_ct = log(chineseper * chttc)
by year, sort: egen chttv = sum(chtv)
gen chi_iv_val = log(chineseper * chttv)

*Define the interacted terms
gen lnchtvXpost = lnchtv * post
gen lnchtcXpost = lnchtc * post
gen chi_iv_ctXpost = chi_iv_ct * post
gen chi_iv_valXpost = chi_iv_val * post

*Keep only common sample where both lnchtv and lnchtc are not missing
drop if lnchtc == .
drop if lnchtv == .

****Regressions****
*low income returns
ivreghdfe ln_returns12 lnpopulation d_lnreturns12_9801 bachelorshare d_lnincome_9801 ln_density near_college_5 (lnchtv lnchtvXpost = chi_iv_val chi_iv_valXpost) if chtv != 0, absorb(timecounty) cluster(zipcode) 
eststo lr1
estadd scalar fstat = e(widstat)
estadd local controls "Yes"
estadd local fe "Yes"

ivreghdfe ln_returns12 lnpopulation d_lnreturns12_9801 bachelorshare d_lnincome_9801 ln_density near_college_5 (lnchtc lnchtcXpost = chi_iv_ct chi_iv_ctXpost) if chtc != 0, absorb(timecounty) cluster(zipcode) 
eststo lr2
estadd scalar fstat = e(widstat)
estadd local controls "Yes"
estadd local fe "Yes"

*high income returns
ivreghdfe ln_returns3 lnpopulation d_lnreturns3_9801 bachelorshare d_lnincome_9801 ln_density near_college_5 (lnchtv lnchtvXpost = chi_iv_val chi_iv_valXpost) if chtv != 0, absorb(timecounty) cluster(zipcode) 
eststo hr1
estadd scalar fstat = e(widstat)
estadd local controls "Yes"
estadd local fe "Yes"

ivreghdfe ln_returns3 lnpopulation d_lnreturns3_9801 bachelorshare d_lnincome_9801 ln_density near_college_5 (lnchtc lnchtcXpost = chi_iv_ct chi_iv_ctXpost) if chtc != 0, absorb(timecounty) cluster(zipcode) 
eststo hr2
estadd scalar fstat = e(widstat)
estadd local controls "Yes"
estadd local fe "Yes"

*Create table
esttab lr1 lr2 hr1 hr2 ///
	using "../results/table7.tex", replace ///
	label ///
	keep(lnchtvXpost lnchtv lnchtcXpost lnchtc) ///
	order(lnchtvXpost lnchtv lnchtcXpost lnchtc) ///
	star(* 0.10 ** 0.05 *** 0.01) ///
	cells(b(star fmt(%9.3f)) se(par fmt(%9.3f))) ///
	stats(controls fe fstat N , ///
		fmt(0 0 %3.0f %11.0g ) ///
		labels("Controls" ///
			"County-year FE" ///
			"First Stage F-statistic" ///
			"Observations")) ///
	 mlabels(, none) collabels(, none) ///
	 mgroups("Low Income Returns" "High Income Returns", pattern(1 0 1 0))
